export interface IProps {
  global: any;
  buttonPermissions: any;
  contractManagement: any;
  menuCode: string;
}

export interface IDataSourceType {
  description?: string; //显示名称
  visible?: boolean; //是否显示 0：不显示 1：显示
  id?: number; // id
  explain?: string; //交易单元ID
}

export interface IApplyType {
  description?: string; //显示名称
  visible?: number; //是否显示 0：不显示 1：显示
  id?: number; // id
  explain?: string; // 交易单元id
}

// 操作类型
export enum IOperationType {
  ADD = '1', // 新增
  EDIT = '2', // 编辑
  DETELE = '3', // 删除
}

// 操作类型
export enum IVisibleType {
  SHOW = 1, // 显示
  HIDDEN = 0, // 不显示
}

export interface IOptionType {
  label?: string;
  value?: string | number;
  children?: IOptionType[];
}

export interface IStationDataType {
  stationId?: number; // 单元id
  stationName?: string; // 单元名称
}

export interface IDealElementOptions {
  id?: number;
  key?: string;
  label?: string;
  parentKey?: number;
  regionId?: string;
  title: string;
  value?: string;
  provinceId?: string;
  children?: IDealElementOptions[];
}

export type IDealElementDataObj = Record<number, IDealElementOptions[]>;
